/* Copyright (c) 2004-2024 peigen.info. All rights reserved. */

package info.peigen.hotpot.business.account.facade;


import info.peigen.hotpot.business.account.facade.order.trans.TransferOrder;
import info.peigen.hotpot.business.account.facade.result.trans.TransferResult;

/**
 * <b>(AccountTransServiceFacade)</b>
 *
 * @author Peigen
 * @version 1.0.0
 * @since 2021/7/28
 */
public interface AccountTransServiceFacade {
    /**
     * 转账交易
     *
     * @param order TransferOrder
     *
     * @return TransferResult
     */
    TransferResult transfer(TransferOrder order);

    /**
     * 入账交易
     *
     * @param order TransferOrder
     *
     * @return TransIncomeResult
     */
    TransferResult deposit(TransferOrder order);

    /**
     * 付款交易
     *
     * @param order TransferOrder
     *
     * @return TransPaidResult
     */
    TransferResult withdraw(TransferOrder order);
}
